package com.wlhse.dao;

import com.wlhse.dto.inDto.ProblemImportInDto;
import com.wlhse.dto.outDto.ProblemImportDto;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;

@Repository
public interface ProblemImportDao {
    //更新内容
    int updateProblemImportDto(ProblemImportDto problemImportDto);

    //更新整改内容
    int updateRectProblemImportDto(ProblemImportDto problemImportDto);

    //更新验证内容
    int updateVerifyProblemImportDto(ProblemImportDto problemImportDto);

    //根据任务id查询出相关内容
    ProblemImportDto queryImportContentByTaskId(int taskID);

    //录入问题
    int addProblem(ProblemImportDto problemImportDto);

    List<ProblemImportDto> getProblemImportDtoByContiton(ProblemImportInDto problemImportInDto);

    ProblemImportDto getProblemImportDtoById(@Param("problemID") int problemID, @Param("url") String url, @Param("checkPersonID") Integer checkPersonID);

    ProblemImportDto getUpdateProblemById(@Param("problemID") int problemID, @Param("url") String url);

    int getProblemImportDtoCount(ProblemImportInDto problemImportInDto);

    int addNewProblem(ProblemImportDto problemImportDto);

    //根据id查询修改意见
    String getModificationById(@Param("problemID") int problemID);

    int getHashCount(@Param("hash") String hash);

    int addProblemIsRectOntime(ProblemImportDto problemImportDto);

    //查询'未整改' or '未验证' or '验证未通过' or '已验证'的问题total
    int getTotalProblemStatus4(ProblemImportInDto problemImportInDto);

    //查询'未整改' or '未验证' or '验证未通过' or '已验证'的问题
    List<ProblemImportDto> getProblemImportDtoByContitonStatus4(ProblemImportInDto problemImportInDto);

    //查询两个状态的问题
    List<ProblemImportDto> getProblemImportDtoByStatus2(ProblemImportInDto problemImportInDto);

    //查询两个状态问题的总数
    int getTotalProblemImportDtoByStatus2(ProblemImportInDto problemImportInDto);
}
